const inquirer = require('inquirer')
const spawn = require('cross-spawn')

checkList().then((option) => {
  if (option.type === 'dev') {

  }
  switch (option.type) {
    case 'dev':
      // 运行
      const { chooseEnv } = require('./utils/env')
      // 选择环境
      chooseEnv()
      break
    case 'syncTs':
      // 生成接口类型文档
      spawn('yarn', ['sync-ts'], {
        stdio: 'inherit',
      })
      break
    case 'updateIconFont':
      const {updateIconFont} = require('./utils/iconfont')
      updateIconFont()
      break
  }


  // if (option.type === 'dev') {
  //   // 调试
  //   const { startDev } = require('./utils/dev')
  //   startDev(option)
  // } else if (option.type === 'iconfont') {
  //   // 最新的iconfont生成
  //   const { updateNewIconfont } = require('./utils/iconfont')
  //   updateNewIconfont()
  // } else if (option.type === 'codepush') {
  //   // 热更发布
  //   const { codepush } = require('./utils/codepush')
  //   codepush()
  // }
})

function checkList() {
  const promptList = [
    {
      type: 'rawlist',
      message: '请选择功能',
      pageSize: 100,
      name: 'type',
      choices: [
        {
          name: '运行项目',
          value: 'dev'
        },
        {
          name: '生成接口类型文档',
          value: 'syncTs'
        },
        {
          name: '更新IconFont',
          value: 'updateIconFont'
        }
      ]
    }
  ]
  return inquirer.prompt(promptList)
}
